package com.cskaoyan.javase.overload._0introduction;

/**
 * @description: 用方法的重载改造案例
 * @author: wuguidong@cskaoyan.onaliyun.com
 **/

/**
 * 现在有三个需求：
 * 1. 编写程序，计算两个int类型数据之和，并输出结果
 * 2. 编写程序，计算两个double类型数据之和，并输出结果
 * 3. 编写程序，计算两个long类型数据之和，并输出结果
 *
 * 方法的重载:
 *      在Java的同一个类当中,允许出现方法名相同的多个方法的现象,称之为方法的重载
 *      方法的重载是有前提的: 在方法名相同的情况下,方法的签名必须不同(也就是说必须形参列表不同)
 * 方法的签名:
 *      方法名 + 形参列表
 *
 * 什么叫形参列表不同?
 *      1.个数不同
 *      2.数据类型不同
 *      3.顺序不同
 * 以上三种方式构成形参列表不同,没有第四种方式了
 *
 * 除此之外还有其它条件构成方法的重载吗? 首先直接回答,没有
 *      1.返回值类型
 *      2.修饰符列表
 *      3.形参的名字(这一点尤其要注意,形参名字不同不能构成方法的重载)
 *
 *
 */
public class NewDemo {
    public static void main(String[] args) {

    }
    //这是方法的重复,不是重载
    //'test()' is already defined in 'com.cskaoyan.javase.overload._0introduction.NewDemo'
    //public static void test(){}
    //public static void test(){}

    public static void test(){}
    public static void test(int a){}
    //public static void test(int b){}
    public static void test(double a){}
    public static void test(double a,int b){}
    public static void test(int a,double b){}
      //void test(int a,double b){}
    //public static int test(int a,double b){
    //    return 1;
    //}


}
